package com.wali.modules.usr.dao;

import com.wali.modules.usr.vo.UsrReceiverVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author walixu
 * @ClassName com.wali.modules.common.dao
 * @Description 收件人信息dao接口
 * @email wali.xu@kpmg.com
 * @date 19/01/2019 2:14 下午
 */
@Mapper
public interface IUsrReceiverDao {

    /**
     * @param usrReceiver
     * @return
     * @throws
     * @Title saveUsrSender
     * @Description 新增收件人信息
     */
    int saveUsrReceiver(@Param("usrReceiver") UsrReceiverVO usrReceiver);

    /**
     * @param usrReceiver
     * @return
     * @throws
     * @Title getUsrReceiver
     * @Description 查询符合条件的单条收件人信息
     */
    UsrReceiverVO getUsrReceiver(@Param("usrReceiver") UsrReceiverVO usrReceiver);

    /**
     * @param usrReceiver
     * @return
     * @throws
     * @Title updateUsrReceiver
     * @Description 更新收件人信息
     */
    int updateUsrReceiver(@Param("usrReceiver") UsrReceiverVO usrReceiver);

    /**
     * @param usrReceiver
     * @return
     * @throws
     * @Title deleteUsrReceiver
     * @Description 删除收件人信息
     */
    int deleteUsrReceiver(@Param("usrReceiver") UsrReceiverVO usrReceiver);

    /**
     * @param usrReceiver
     * @return 收件人列表
     * @throws
     * @Title listUsrReceiver
     * @Description 查询所有符合条件的收件人信息
     */
    List<UsrReceiverVO> listUsrReceiver(@Param("usrReceiver") UsrReceiverVO usrReceiver, @Param("page") int page, @Param("limit") int limit, @Param("storeId") int storeId);

    /**
     * @param usrReceiver
     * @return
     * @throws
     * @Title countUsrReceiver
     * @Description 统计符合条件的收件人数量
     */
    int countUsrReceiver(@Param("usrReceiver") UsrReceiverVO usrReceiver, @Param("storeId") int storeId);
}
